define([],function (){
    const MuCascader =  {
        template: `<el-cascader
      :options="options"
      :props="props"
      @change="handleChange"
    />`,
        props:{
            modelValue:{
                type:Object,
                default:''
            },
            multiple:{
                type:Boolean,
                default:false
            },
            lazy:{
                type:Boolean,
                default:false
            },
            lazyLoad:{
                type:Function,
                default:null
            },
            valueField:{
                type:String,
                default:'value'
            },
            labelField:{
                type:String,
                default:'label'
            },
            children:{
                type:String,
                default:'children'
            },
            disabled:{
                type:String,
                default:'disabled'
            },
            options:{
                type:Array,
                default:[]
            }
        },
        emits:['update:modelValue'],
        data(){
            return {
                value:this.modelValue,
                props:{
                    multiple:this.multiple,
                    lazy:this.lazy,
                    lazyLoad:this.lazyLoad,
                    value:this.valueField,
                    label:this.labelField,
                    children:this.children,
                    disabled:this.disabled
                }
            }
        },
        methods:{
            handleChange(e){
                this.$emit('update:modelValue',e)
            }
        }
    }
    return MuCascader
})